package com.flea.hclv.model.dao;

import com.flea.hclv.model.entity.HGuide;
import com.flea.hclv.model.entity.HGuideTravelGroup;
import com.flea.hclv.model.entity.HTravelGroup;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;

import java.util.List;

public interface HGuideTravelGroupMapper {
    int deleteByPrimaryKey(String id);

    int insert(HGuideTravelGroup record);

    int insertSelective(HGuideTravelGroup record);

    HGuideTravelGroup selectByPrimaryKey(String id);

    int updateByPrimaryKeySelective(HGuideTravelGroup record);

    int updateByPrimaryKey(HGuideTravelGroup record);

    HGuideTravelGroup selectByTravelGroupId(String groupId);

    List<HGuideTravelGroup> selectByGuideIdAndPage(@Param("guideId") String guideId, RowBounds rowBounds);

    List<HGuideTravelGroup> selectByGroupList(
            @Param("payDeptUuid") String payDeptUuid,
            @Param("status") String status,
            @Param("guides") List<HGuide> guides,
            @Param("groupList") List<HTravelGroup> groupList,
            RowBounds rowBounds);

    List<HGuideTravelGroup> selectAll(RowBounds rowBounds);

    List<HGuideTravelGroup> selectByGuideIdAndDays(String guideId);

    HGuideTravelGroup selectFirstNewByGuideId(String guideId);

    List<HGuideTravelGroup> selectByPayDeptId(String payDeptUuid);
}